package com.huatech.model;

import java.lang.reflect.InvocationTargetException;
import java.util.Date;

import org.apache.commons.beanutils.BeanUtils;

import com.alibaba.fastjson.annotation.JSONField;
import com.huatech.domain.SystemConfig;

/**
 * 系统配置
 * 
 * @author lh
 * @version V2.0.0
 * @date 2017年05月10日 14时46分16秒 Copyright 杭州融都科技股份有限公司 统一资金接入系统 BDS All Rights
 *       Reserved 官方网站：www.erongdu.com 研发中心：rdc@erongdu.com
 *       未经授权不得进行修改、复制、出售及商业使用
 */
public class SystemConfigModel extends BasePageModel {

	/**
	 * 主键
	 */
	private Long id;
	/**
	 * 配置标识
	 */
	private String configCode;
	/**
	 * 配置值
	 */
	private String configValue;
	/**
	 * 启用状态：0 未启用 1 启用
	 */
	private Integer status;
	/**
	 * 备注
	 */
	private String remark;
	/**
	 * 添加时间
	 */
	@JSONField(format = "yyyy-MM-dd HH:mm:ss")
	private Date createTime;

	/**
	 * 关键字
	 */
	private String keywords;

	public Long getId() {
		return id;
	}

	public void setId(Long id) {
		this.id = id;
	}

	public String getConfigCode() {
		return configCode;
	}

	public void setConfigCode(String configCode) {
		this.configCode = configCode;
	}

	public String getConfigValue() {
		return configValue;
	}

	public void setConfigValue(String configValue) {
		this.configValue = configValue;
	}

	public Integer getStatus() {
		return status;
	}

	public void setStatus(Integer status) {
		this.status = status;
	}

	public String getRemark() {
		return remark;
	}

	public void setRemark(String remark) {
		this.remark = remark;
	}

	public Date getCreateTime() {
		return createTime;
	}

	public void setCreateTime(Date createTime) {
		this.createTime = createTime;
	}

	public String getKeywords() {
		return keywords;
	}

	public void setKeywords(String keywords) {
		this.keywords = keywords;
	}

	/**
	 * 校验业务参数
	 */
	public void validParam() {
		//TODO
	}

	public SystemConfig copyToDomain() {
		SystemConfig config = new SystemConfig();
		try {
			BeanUtils.copyProperties(config, this);
		} catch (IllegalAccessException | InvocationTargetException e) {
		}
		return config;
	}

}
